package com.java.architect.manager.aop;

import java.lang.annotation.*;

@Inherited
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface Inventory {

    /**
     * 缓存数据
     */
    String value();

    /**
     * 总库存缓存时间(秒)
     */
    long totalExpire() default 5 * 60;

    /**
     * 是否需要刷写到数据库
     */
    boolean flushToDb() default true;

    /**
     * 是否忽略总库存缓存, 适用于返回固定数量时
     * @return
     */
    boolean ignoreTotalCache() default false;

}
